package com.cictec.middleware.core.entity;

import java.io.Serializable;
import javax.persistence.*;

@Table(name = "t_task_dev")
public class TaskDev implements Serializable {
    /**
     * 主键
     */
    @Id
    @Column(name = "td_uuid")
    private String tdUuid;

    /**
     * 任务uuid
     */
    @Column(name = "td_task_uuid")
    private String tdTaskUuid;

    /**
     * 设备uuid
     */
    @Column(name = "td_dev_uuid")
    private String tdDevUuid;

    /**
     * 车辆uuid
     */
    @Column(name = "td_bus_uuid")
    private String tdBusUuid;

    /**
     * 下发状态
1：等待
2：已发
3：成功
4：失败
     */
    @Column(name = "td_send_status")
    private String tdSendStatus;

    /**
     * 下发时间
     */
    @Column(name = "td_send_time")
    private String tdSendTime;

    /**
     * 设备更新完成时间
     */
    @Column(name = "td_finished_time")
    private String tdFinishedTime;

    /**
     * 任务下发尝试次数
     */
    @Column(name = "td_retry_count")
    private Integer tdRetryCount;

    private static final long serialVersionUID = 1L;

    /**
     * 获取主键
     *
     * @return td_uuid - 主键
     */
    public String getTdUuid() {
        return tdUuid;
    }

    /**
     * 设置主键
     *
     * @param tdUuid 主键
     */
    public void setTdUuid(String tdUuid) {
        this.tdUuid = tdUuid == null ? null : tdUuid.trim();
    }

    /**
     * 获取任务uuid
     *
     * @return td_task_uuid - 任务uuid
     */
    public String getTdTaskUuid() {
        return tdTaskUuid;
    }

    /**
     * 设置任务uuid
     *
     * @param tdTaskUuid 任务uuid
     */
    public void setTdTaskUuid(String tdTaskUuid) {
        this.tdTaskUuid = tdTaskUuid == null ? null : tdTaskUuid.trim();
    }

    /**
     * 获取设备uuid
     *
     * @return td_dev_uuid - 设备uuid
     */
    public String getTdDevUuid() {
        return tdDevUuid;
    }

    /**
     * 设置设备uuid
     *
     * @param tdDevUuid 设备uuid
     */
    public void setTdDevUuid(String tdDevUuid) {
        this.tdDevUuid = tdDevUuid == null ? null : tdDevUuid.trim();
    }

    /**
     * 获取车辆uuid
     *
     * @return td_bus_uuid - 车辆uuid
     */
    public String getTdBusUuid() {
        return tdBusUuid;
    }

    /**
     * 设置车辆uuid
     *
     * @param tdBusUuid 车辆uuid
     */
    public void setTdBusUuid(String tdBusUuid) {
        this.tdBusUuid = tdBusUuid == null ? null : tdBusUuid.trim();
    }

    /**
     * 获取下发状态
1：等待
2：已发
3：成功
4：失败
     *
     * @return td_send_status - 下发状态
1：等待
2：已发
3：成功
4：失败
     */
    public String getTdSendStatus() {
        return tdSendStatus;
    }

    /**
     * 设置下发状态
1：等待
2：已发
3：成功
4：失败
     *
     * @param tdSendStatus 下发状态
1：等待
2：已发
3：成功
4：失败
     */
    public void setTdSendStatus(String tdSendStatus) {
        this.tdSendStatus = tdSendStatus == null ? null : tdSendStatus.trim();
    }

    /**
     * 获取下发时间
     *
     * @return td_send_time - 下发时间
     */
    public String getTdSendTime() {
        return tdSendTime;
    }

    /**
     * 设置下发时间
     *
     * @param tdSendTime 下发时间
     */
    public void setTdSendTime(String tdSendTime) {
        this.tdSendTime = tdSendTime == null ? null : tdSendTime.trim();
    }

    /**
     * 获取设备更新完成时间
     *
     * @return td_finished_time - 设备更新完成时间
     */
    public String getTdFinishedTime() {
        return tdFinishedTime;
    }

    /**
     * 设置设备更新完成时间
     *
     * @param tdFinishedTime 设备更新完成时间
     */
    public void setTdFinishedTime(String tdFinishedTime) {
        this.tdFinishedTime = tdFinishedTime == null ? null : tdFinishedTime.trim();
    }

    /**
     * 获取任务下发尝试次数
     *
     * @return td_retry_count - 任务下发尝试次数
     */
    public Integer getTdRetryCount() {
        return tdRetryCount;
    }

    /**
     * 设置任务下发尝试次数
     *
     * @param tdRetryCount 任务下发尝试次数
     */
    public void setTdRetryCount(Integer tdRetryCount) {
        this.tdRetryCount = tdRetryCount;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", tdUuid=").append(tdUuid);
        sb.append(", tdTaskUuid=").append(tdTaskUuid);
        sb.append(", tdDevUuid=").append(tdDevUuid);
        sb.append(", tdBusUuid=").append(tdBusUuid);
        sb.append(", tdSendStatus=").append(tdSendStatus);
        sb.append(", tdSendTime=").append(tdSendTime);
        sb.append(", tdFinishedTime=").append(tdFinishedTime);
        sb.append(", tdRetryCount=").append(tdRetryCount);
        sb.append("]");
        return sb.toString();
    }
}